
const InitText = '';

cc.Class({
    extends: cc.Component,

    properties: {
        editText:cc.EditBox,
    },

    // LIFE-CYCLE CALLBACKS:
    ctor(){
        this._rowIdx = -1;
    },

    onLoad () {
        let self = this;
        this.editText.node.on('text-changed',(event)=>{
            let newText = self.editText.string.trim();
            self.updateRow(newText);
        },this);
    },

    setRowIdx(rowIdx){
        this._rowIdx = rowIdx;
    },

    init(){
        this.editText.string = InitText;
        this.updateRow(InitText);
    },

    updateRow(newText){
        // 1. 判断内容正确性
        let len = newText.length;
        if(len > 9){
            G.gameMap.showTips(`当前长度为:${len},最长为9.`);
            return;
        }
        let nums = [];
        for(let i = 0; i < len; ++i){
            let asciiNum = newText.charCodeAt(i);
            if(asciiNum >= 48 && asciiNum <= 57){
                nums.push(parseInt(newText[i]));
            }else{
                G.gameMap.showTips(`输入字符错误. asciiCode:${asciiNum}`);
                return;
            }
        }

        let cells = G.gameMap.getCellsAtRow(this._rowIdx);
        let numLen = nums.length;
        for(let i = 0; i < cells.length; ++i){
            let cell = cells[i];
            if(i < numLen){
                cell.setValue(nums[i]);
            }else{
                cell.setValue(0);
            }
        }
    },

    // lock_btnClicked(){
    //     if(this._bLock){
    //         return;
    //     }
    //     this._bLock = true;
    // },
    //
    // unlock_btnClicked(){
    //     if(!this._bLock){
    //         return;
    //     }
    //     this._bLock = false;
    //
    //
    // },
});
